type Replace<S extends string, From extends string, To extends string> = 
    S extends `${infer R}${From}${infer T}` ? From extends `` ? S : `${R}${To}${T}` : S